﻿using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Herboristeria.Datos.Entidad;

namespace Herboristeria.Datos
{
    public class dbUsuarios
    {

        public dbUsuarios()
        {

        }

        public DataSet ObtenerUsuarios()
        {
            SqlConnection cn = new SqlConnection();
            cn.ConnectionString = "Data Source=192.168.0.250;Initial Catalog=Herboristeria;Persist Security Info=True;User ID=Antonio;Password=minas1234";

            DataSet ds = new DataSet();
            try
            {
                    
                cn.Open();

                SqlCommand cmd = new SqlCommand("usu_SelAll", cn);
                cmd.CommandType = CommandType.StoredProcedure;

                SqlDataAdapter SqlDa = new SqlDataAdapter(cmd);
                SqlDa.Fill(ds);
                cn.Close();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return ds;
        }


        public DataSet ObtenerUsuario_PorNombreUsuario(Usuario usuario)
        { 
            SqlConnection conexion = new SqlConnection();
            conexion.ConnectionString = "Data Source=192.168.0.250;Initial Catalog=Herboristeria;Persist Security Info=True;User ID=Antonio;Password=minas1234";

            DataSet ds = new DataSet();

            try
            {
                conexion.Open();
                SqlCommand cmd = new SqlCommand("usuario_byUsername", conexion);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add("@usuario", usuario.Username);

                SqlDataAdapter SqlDa = new SqlDataAdapter(cmd);
                SqlDa.Fill(ds);
                conexion.Close();

            }
            catch (Exception ex)
            {
                throw ex;
            }
            return ds;
        }

        public bool ConectarUsuario(Usuario usuario)
        {
            SqlConnection conexion = new SqlConnection();
            conexion.ConnectionString = "Data Source=192.168.0.250;Initial Catalog=Herboristeria;Persist Security Info=True;User ID=Antonio;Password=minas1234";

            bool conectado = false;

            try
            {
                conexion.Open();
                SqlCommand cmd = new SqlCommand("usuario_conectar", conexion);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add("@usuario", usuario.Username);
                //EJECUTAMOS EL PROCEDIMIENTO
                cmd.ExecuteNonQuery();
                conexion.Close();
                conectado = true;
            }
            catch (Exception ex)
            {
                conectado = false;
                throw ex;
            }
            return conectado;
        }

        public void DesconectarUsuario(Usuario usuario)
        {
            SqlConnection conexion = new SqlConnection();
            conexion.ConnectionString = "Data Source=192.168.0.250;Initial Catalog=Herboristeria;Persist Security Info=True;User ID=Antonio;Password=minas1234";

            try
            {
                conexion.Open();
                SqlCommand cmd = new SqlCommand("usuario_desconectar", conexion);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Add("@usuario", usuario.Username);
                //EJECUTAMOS EL PROCEDIMIENTO
                cmd.ExecuteNonQuery();
                conexion.Close();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
       

    }
}
